Members
Overall Objectives
Research Program
Application Domains
New Software and Platforms
New Results
Bilateral Contracts and Grants with Industry
Partnerships and Cooperations
Dissemination
Bibliography
Inria | Raweb 2014 | Exploratory Action
XML PDF e-pub
PDF e-Pub


Section: New Software and Platforms

Heptagon/BZR programming language

Participants : Gwenaël Delaval [Contact person] , Eric Rutten.

We want to produce results concretely usable by third parties, either in cooperative projects, or by free diffusion of tools. One perspective is to build tool boxes for the design of continuous control solutions for computing systems: it will be explored in the future. A readily available result concerns discrete control and programming.

Heptagon is a dataflow synchronous language, inspired from Lucid Synchrone (http://www.di.ens.fr/~pouzet/lucid-synchrone ). Its compiler is meant to be simple and modular, allowing this language to be a good support for the prototyping of compilation methods of synchronous languages.

Heptagon has been used to build BZR (http://bzr.inria.fr ), which is an extension of the former with contracts constructs. These contracts allow to express dynamic temporal properties on the inputs and outputs of Heptagon node. These properties are then enforced, within the compilation of a BZR program, by discrete controller synthesis, using the Sigali tool (http://www.irisa.fr/vertecs/Logiciels/sigali.html ). The synthesized controller is itself generated in Heptagon , allowing its analysis and compilation towards different target languages (C, Java, VHDL).

Prospects about Heptagon/BZR lie in: support for programming methodologies in BZR: debug, diagnosis, abstraction and composition, ...; extensions towards use of more expressive synthesis tools ; integration of target code into execution platforms (Fractal, reconfigurable FPGA, ...)